// run: $exec < bfdiff.in
#include <iostream>

int const maxn = 1000;
int da[maxn];
int n, m;

int main()
{
	std::cin >> n;
	for (int i = 1; i <= n; i++) std::cin >> da[i];

	std::cin >> m;
	for (int i = 0, op; i < m; i++) {
		std::cin >> op;
		if (op == 0) {
			int p, v;
			std::cin >> p >> v;
			da[p] += v;
		} else {
			int x0, d;
			std::cin >> x0 >> d;
			int ans = da[x0];
			for (int j = x0 + d; j <= n; j += d) ans = std::max(ans, da[j]);
			std::cout << ans << '\n';
		}
	}
}

